<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFrameworks>$(NetCoreAppCurrent);$(NetFrameworkMinimum)</TargetFrameworks>
    <EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <!-- SYSLIB0020: JsonSerializerOptions.IgnoreNullValues is obsolete -->
    <NoWarn>$(NoWarn);SYSLIB0020</NoWarn>
    <!-- SYSLIB0049: JsonSerializerOptions.AddContext is obsolete -->
    <NoWarn>$(NoWarn);SYSLIB0049</NoWarn>
    <!-- Disable analyzers warnings about JSON being misformatted in string literals -->
    <NoWarn>$(NoWarn);JSON001</NoWarn>

    <!-- these tests depend on the pdb files. Causes test failures like:
          [FAIL] System.Text.Json.Tests.DebuggerTests.DefaultJsonElement -->
    <DebuggerSupport Condition="'$(DebuggerSupport)' == '' and '$(TargetOS)' == 'browser'">true</DebuggerSupport>
    <!-- Needed for JsonSerializerOptionsUpdateHandler tests -->
    <MetadataUpdaterSupport Condition="'$(MetadataUpdaterSupport)' == '' and '$(TargetOS)' == 'browser'">true</MetadataUpdaterSupport>
    <IncludeRemoteExecutor>true</IncludeRemoteExecutor>
  </PropertyGroup>
  <PropertyGroup Condition="'$(TargetOS)' == 'browser'">
    <XunitShowProgress>true</XunitShowProgress>
    <!-- This WASM test is problematic and slow right now. This sets the xharness timeout but there is also override in sendtohelix-browser.targets -->
    <WasmXHarnessTestsTimeout>01:15:00</WasmXHarnessTestsTimeout>
  </PropertyGroup>
  <ItemGroup Condition="'$(ContinuousIntegrationBuild)' == 'true'">
    <HighAotMemoryUsageAssembly Include="System.Text.Json.Tests.dll" />
  </ItemGroup>

  <ItemGroup>
    <Compile Include="$(CommonTestPath)System\IO\WrappedMemoryStream.cs" Link="CommonTest\System\IO\WrappedMemoryStream.cs" />
    <Compile Include="$(CommonTestPath)System\DateTimeTestHelpers.cs" Link="CommonTest\System\DateTimeTestHelpers.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.AsyncEnumerable.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.AsyncEnumerable.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Concurrent.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Concurrent.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Dictionary.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Dictionary.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Dictionary.KeyPolicy.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Dictionary.KeyPolicy.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Dictionary.NonStringKey.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Dictionary.NonStringKey.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Generic.Read.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Generic.Read.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Generic.Write.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Generic.Write.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Immutable.Read.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Immutable.Read.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.KeyValuePair.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.KeyValuePair.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Memory.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Memory.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.NonGeneric.Read.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.NonGeneric.Read.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.NonGeneric.Write.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.NonGeneric.Write.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.ObjectModel.Read.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.ObjectModel.Read.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.ObjectModel.Write.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.ObjectModel.Write.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Specialized.Read.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Specialized.Read.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Specialized.Write.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Specialized.Write.cs" />
    <Compile Include="..\Common\CollectionTests\CollectionTests.Immutable.Write.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Immutable.Write.cs" />
    <Compile Include="..\Common\ConstructorTests\ConstructorTests.AttributePresence.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ConstructorTests\ConstructorTests.AttributePresence.cs" />
    <Compile Include="..\Common\ConstructorTests\ConstructorTests.Cache.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ConstructorTests\ConstructorTests.Cache.cs" />
    <Compile Include="..\Common\ConstructorTests\ConstructorTests.Exceptions.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ConstructorTests\ConstructorTests.Exceptions.cs" />
    <Compile Include="..\Common\ConstructorTests\ConstructorTests.ParameterMatching.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ConstructorTests\ConstructorTests.ParameterMatching.cs" />
    <Compile Include="..\Common\ConstructorTests\ConstructorTests.Stream.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ConstructorTests\ConstructorTests.Stream.cs" />
    <Compile Include="..\Common\ExtensionDataTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ExtensionDataTests.cs" />
    <Compile Include="..\Common\StreamingJsonSerializerWrapper.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\StreamingJsonSerializerWrapper.cs" />
    <Compile Include="..\Common\JsonCreationHandlingTests.Dictionary.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\JsonCreationHandlingTests.Dictionary.cs" />
    <Compile Include="..\Common\JsonCreationHandlingTests.Enumerable.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\JsonCreationHandlingTests.Enumerable.cs" />
    <Compile Include="..\Common\JsonCreationHandlingTests.Generic.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\JsonCreationHandlingTests.Generic.cs" />
    <Compile Include="..\Common\JsonCreationHandlingTests.Object.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\JsonCreationHandlingTests.Object.cs" />
    <Compile Include="..\Common\JsonNumberTestData.cs" Link="CommonTest\System\Text\Json\Tests\JsonNumberTestData" />
    <Compile Include="..\Common\JsonSerializerWrapper.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\JsonSerializerWrapper.cs" />
    <Compile Include="..\Common\JsonTestHelper.cs" Link="CommonTest\System\Text\Json\JsonTestHelper.cs" />
    <Compile Include="..\Common\NodeInteropTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\NodeInteropTests.cs" />
    <Compile Include="..\Common\NumberHandlingTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\NumberHandlingTests.cs" />
    <Compile Include="..\Common\PropertyNameTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\PropertyNameTests.cs" />
    <Compile Include="..\Common\PropertyVisibilityTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\PropertyVisibilityTests.cs" />
    <Compile Include="..\Common\PropertyVisibilityTests.InitOnly.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\PropertyVisibilityTests.InitOnly.cs" />
    <Compile Include="..\Common\PropertyVisibilityTests.NonPublicAccessors.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\PropertyVisibilityTests.NonPublicAccessors.cs" />
    <Compile Include="..\Common\ReferenceHandlerTests\ReferenceHandlerTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ReferenceHandlerTests\ReferenceHandlerTests.cs" />
    <Compile Include="..\Common\ReferenceHandlerTests\ReferenceHandlerTests.Deserialize.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ReferenceHandlerTests\ReferenceHandlerTests.Deserialize.cs" />
    <Compile Include="..\Common\ReferenceHandlerTests\ReferenceHandlerTests.IgnoreCycles.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ReferenceHandlerTests\ReferenceHandlerTests.IgnoreCycles.cs" />
    <Compile Include="..\Common\ReferenceHandlerTests\ReferenceHandlerTests.Serialize.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\ReferenceHandlerTests\ReferenceHandlerTests.Serialize.cs" />
    <Compile Include="..\Common\RequiredKeywordTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\RequiredKeywordTests.cs" />
    <Compile Include="..\Common\SampleTestData.OrderPayload.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\SampleTestData.OrderPayload.cs" />
    <Compile Include="..\Common\SerializerTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\SerializerTests.cs" />
    <Compile Include="..\Common\Utf8MemoryStream.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\Utf8MemoryStream.cs" />
    <Compile Include="..\Common\UnmappedMemberHandlingTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\UnmappedMemberHandlingTests.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.ConcurrentCollections.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.ConcurrentCollections.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.Constructor.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.Constructor.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.GenericCollections.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.GenericCollections.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.ImmutableCollections.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.ImmutableCollections.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.NonGenericCollections.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.NonGenericCollections.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.Polymorphic.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.Polymorphic.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestClass.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestClass.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestClassWithFields.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestClassWithFields.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestClassWithNullables.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestClassWithNullables.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestClassWithObject.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestClassWithObject.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestClassWithObjectArrays.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestClassWithObjectArrays.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestClassWithSimpleObject.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestClassWithSimpleObject.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestStruct.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestStruct.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.SimpleTestStructWithFields.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.SimpleTestStructWithFields.cs" />
    <Compile Include="..\Common\TestClasses\TestClasses.ValueTypedMember.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestClasses.ValueTypedMember.cs" />
    <Compile Include="..\Common\TestClasses\TestData.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\TestClasses\TestData.cs" />
    <Compile Include="..\Common\UnsupportedTypesTests.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\UnsupportedTypesTests.cs" />
    <Compile Include="BitStackTests.cs" />
    <Compile Include="BufferFactory.cs" />
    <Compile Include="BufferSegment.cs" />
    <Compile Include="DebuggerTests.cs" />
    <Compile Include="FixedSizedBufferWriter.cs" />
    <Compile Include="InvalidBufferWriter.cs" />
    <Compile Include="JsonBase64TestData.cs" />
    <Compile Include="JsonDateTimeTestData.cs" />
    <Compile Include="JsonDocumentTests.cs" />
    <Compile Include="JsonElementCloneTests.cs" />
    <Compile Include="JsonElementParseTests.cs" />
    <Compile Include="JsonElementWriteTests.cs" />
    <Compile Include="JsonEncodedTextTests.cs" />
    <Compile Include="JsonGuidTestData.cs" />
    <Compile Include="JsonNode\Common.cs" />
    <Compile Include="JsonNode\JsonArrayTests.cs" />
    <Compile Include="JsonNode\JsonNodeTests.cs" />
    <Compile Include="JsonNode\JsonNodeOperatorTests.cs" />
    <Compile Include="JsonNode\JsonObjectTests.cs" />
    <Compile Include="JsonNode\JsonValueTests.cs" />
    <Compile Include="JsonNode\ParseTests.cs" />
    <Compile Include="JsonNode\ParentPathRootTests.cs" />
    <Compile Include="JsonNode\ToStringTests.cs" />
    <Compile Include="JsonPropertyTests.cs" />
    <Compile Include="JsonReaderStateAndOptionsTests.cs" />
    <Compile Include="JsonTestHelper.cs" />
    <Compile Include="JsonWriterOptionsTests.cs" />
    <Compile Include="NewtonsoftTests\CamelCaseTests.cs" />
    <Compile Include="NewtonsoftTests\CustomObjectConverterTests.cs" />
    <Compile Include="NewtonsoftTests\DateTimeConverterTests.cs" />
    <Compile Include="NewtonsoftTests\EnumConverterTests.cs" />
    <Compile Include="NewtonsoftTests\ImmutableCollectionsTests.cs" />
    <Compile Include="NewtonsoftTests\JsonSerializerTests.cs" />
    <Compile Include="Serialization\Array.ReadTests.cs" />
    <Compile Include="Serialization\Array.WriteTests.cs" />
    <Compile Include="Serialization\CacheTests.cs" />
    <Compile Include="Serialization\CollectionTests.cs" />
    <Compile Include="Serialization\ConstructorTests.cs" />
    <Compile Include="Serialization\ContinuationTests.cs" />
    <Compile Include="Serialization\ContinuationTests.NullToken.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Array.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Attribute.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.BadConverters.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Callback.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.ContravariantDictionaryConverter.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.DerivedTypes.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.DictionaryEnumConverter.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.DictionaryGuidConverter.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.DictionaryInt32StringConverter.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.DictionaryInt32StringKeyValueConverter.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.DictionaryKeyValueConverter.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Dynamic.Sample.Tests.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Enum.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Exceptions.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Dynamic.Sample.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.HandleNull.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Int32.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Interface.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.InvalidCast.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.KeyConverters.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.List.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.NullValueType.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.NullableTypes.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Object.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Point.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.Polymorphic.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.ReadAhead.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.ValueTypedMember.cs" />
    <Compile Include="Serialization\CustomConverterTests\CustomConverterTests.cs" />
    <Compile Include="Serialization\JsonCreationHandlingTests.cs" />
    <Compile Include="Serialization\MetadataTests\DefaultJsonPropertyInfo.cs" />
    <Compile Include="Serialization\RequiredKeywordTests.cs" />
    <Compile Include="Serialization\CyclicTests.cs" />
    <Compile Include="Serialization\DomTests.cs" />
    <Compile Include="Serialization\DynamicTests.cs" />
    <Compile Include="Serialization\EnumConverterTests.cs" />
    <Compile Include="Serialization\EnumTests.cs" />
    <Compile Include="Serialization\ExceptionTests.cs" />
    <Compile Include="Serialization\ExtensionDataTests.cs" />
    <Compile Include="Serialization\InvalidJsonTests.cs" />
    <Compile Include="Serialization\InvalidTypeTests.cs" />
    <Compile Include="Serialization\JsonDocumentTests.cs" />
    <Compile Include="Serialization\JsonElementTests.cs" />
    <Compile Include="Serialization\JsonPolymorphismOptionsTests.cs" />
    <Compile Include="Serialization\JsonSerializerApiValidation.cs" />
    <Compile Include="Serialization\JsonSerializerWrapper.Reflection.cs" />
    <Compile Include="Serialization\MetadataTests\DefaultJsonTypeInfoResolverMultiContextTests.cs" />
    <Compile Include="Serialization\MetadataTests\JsonTypeInfoResolverTests.cs" />
    <Compile Include="Serialization\MetadataTests\DefaultJsonTypeInfoResolverTests.JsonPropertyInfo.cs" />
    <Compile Include="Serialization\MetadataTests\DefaultJsonTypeInfoResolverTests.JsonTypeInfo.cs" />
    <Compile Include="Serialization\MetadataTests\DefaultJsonTypeInfoResolverTests.cs" />
    <Compile Include="Serialization\MetadataTests\MetadataTests.cs" />
    <Compile Include="Serialization\MetadataTests\MetadataTests.JsonSerializer.cs" />
    <Compile Include="Serialization\MetadataTests\MetadataTests.Options.cs" />
    <Compile Include="Serialization\MetadataTests\TestResolver.cs" />
    <Compile Include="Serialization\NamingPolicyUnitTests.cs" />
    <Compile Include="Serialization\NodeInteropTests.cs" />
    <Compile Include="Serialization\Null.ReadTests.cs" />
    <Compile Include="Serialization\Null.WriteTests.cs" />
    <Compile Include="Serialization\NullableTests.cs" />
    <Compile Include="Serialization\NumberHandlingTests.cs" />
    <Compile Include="Serialization\Object.ReadTests.cs" />
    <Compile Include="Serialization\Object.WriteTests.cs" />
    <Compile Include="Serialization\OnSerializeTests.cs" />
    <Compile Include="Serialization\OptionsTests.cs" />
    <Compile Include="Serialization\PolymorphicTests.cs" />
    <Compile Include="Serialization\PolymorphicTests.CustomTypeHierarchies.cs" />
    <Compile Include="Serialization\PropertyNameTests.cs" />
    <Compile Include="Serialization\PropertyOrderTests.cs" />
    <Compile Include="Serialization\PropertyVisibilityTests.cs" />
    <Compile Include="Serialization\ReadScenarioTests.cs" />
    <Compile Include="Serialization\ReadValueTests.cs" />
    <Compile Include="Serialization\ReferenceHandlerTests.cs" />
    <Compile Include="Serialization\SpanTests.cs" />
    <Compile Include="Serialization\StreamTests.cs" />
    <Compile Include="Serialization\Stream.Collections.cs" />
    <Compile Include="Serialization\Stream.DeserializeAsyncEnumerable.cs" />
    <Compile Include="Serialization\Stream.ReadTests.cs" />
    <Compile Include="Serialization\Stream.WriteTests.cs" />
    <Compile Include="Serialization\StreamTests.ChunkedReaderStream.cs" />
    <Compile Include="Serialization\TypeInfoResolverFunctionalTests.cs" />
    <Compile Include="Serialization\UnmappedMemberHandlingTests.cs" />
    <Compile Include="Serialization\UnsupportedTypesTests.cs" />
    <Compile Include="Serialization\Value.ReadTests.cs" />
    <Compile Include="Serialization\Value.WriteTests.cs" />
    <Compile Include="Serialization\WriteValueTests.cs" />
    <Compile Include="SourceGenRegressionTests\Net60RegressionTests.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.ClassWithCustomConverter.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.DateTimeOffset.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.DictionaryStringHighLowTemps.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.GetJsonTypeInfo.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.HighLowTemps.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.Int32.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.ListDateTimeOffset.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.MyLinkedList.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.PropertyNames.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.String.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.StringArray.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net60\Net60GeneratedContext.WeatherForecastWithPOCOs.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70RegressionTests.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.ClassWithCustomConverter.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.DateTimeOffset.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.DictionaryStringHighLowTemps.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.GetJsonTypeInfo.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.HighLowTemps.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.Int32.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.ListDateTimeOffset.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.MyLinkedList.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.PropertyNames.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.String.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.StringArray.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net70\Net70GeneratedContext.WeatherForecastWithPOCOs.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80RegressionTests.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.ClassWithCustomConverter.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.DateTimeOffset.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.DictionaryStringHighLowTemps.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.GetJsonTypeInfo.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.HighLowTemps.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.Int32.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.ListDateTimeOffset.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.MyLinkedList.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.PropertyNames.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.String.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.StringArray.g.cs" />
    <Compile Include="SourceGenRegressionTests\Net80\Net80GeneratedContext.WeatherForecastWithPOCOs.g.cs" />
    <Compile Include="TestCaseType.cs" />
    <Compile Include="Utf8JsonReaderTests.cs" />
    <Compile Include="Utf8JsonReaderTests.MultiSegment.cs" />
    <Compile Include="Utf8JsonReaderTests.TryGet.cs" />
    <Compile Include="Utf8JsonReaderTests.TryGet.Date.cs" />
    <Compile Include="Utf8JsonReaderTests.ValueTextEquals.cs" />
    <Compile Include="Utf8JsonWriterTests.cs" />
    <Compile Include="Utf8JsonWriterTests.WriteRaw.cs" />

    <Compile Include="..\..\src\System\Text\Json\BitStack.cs" Link="BitStack.cs" />
  </ItemGroup>

  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETCoreApp'">
    <Compile Include="Serialization\ConvertersForUnsupportedTypesFunctionalTests.cs" />
  </ItemGroup>

  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework'">
    <Compile Include="$(CommonPath)System\Buffers\ArrayBufferWriter.cs" Link="CommonTest\System\Buffers\ArrayBufferWriter.cs" />
    <Compile Include="$(CoreLibSharedDir)System\Diagnostics\CodeAnalysis\DynamicallyAccessedMemberTypes.cs" />
    <Compile Include="$(CoreLibSharedDir)System\Diagnostics\CodeAnalysis\DynamicDependencyAttribute.cs" />
    <Compile Include="$(CoreLibSharedDir)System\Diagnostics\CodeAnalysis\SetsRequiredMembersAttribute.cs" Link="System.Private.CoreLib\System\Diagnostics\CodeAnalysis\SetsRequiredMembersAttribute.cs" />
    <Compile Include="$(CoreLibSharedDir)System\Runtime\CompilerServices\CompilerFeatureRequiredAttribute.cs" Link="System.Private.CoreLib\System\Runtime\CompilerServices\CompilerFeatureRequiredAttribute.cs" />
    <Compile Include="$(CoreLibSharedDir)System\Runtime\CompilerServices\IsExternalInit.cs" />
    <Compile Include="$(CoreLibSharedDir)System\Runtime\CompilerServices\RequiredMemberAttribute.cs" Link="System.Private.CoreLib\System\Runtime\CompilerServices\RequiredMemberAttribute.cs" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\src\System.Text.Json.csproj" />
    <ProjectReference Include="$(LibrariesProjectRoot)System.IO.Pipelines\src\System.IO.Pipelines.csproj" />
  </ItemGroup>

  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework'">
    <ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.Roslyn4.0.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
    <ProjectReference Include="$(LibrariesProjectRoot)System.Collections.Immutable\src\System.Collections.Immutable.csproj" />
    <Reference Include="Microsoft.CSharp" />
  </ItemGroup>

</Project>
